/*
 * UMReportsData.h
 *
 *  Created on: Apr 18, 2012
 *      Author: desilva
 */

#ifndef UMREPORTSDATA_H_
#define UMREPORTSDATA_H_

#include <string>

/**
 * This class provides additional data from the UMReports database.  Although
 * some of the data that is in the TranscriptParser is from UMReports, this
 * class is intended to provide non-student data.
 */
class UMReportsData
{
public:
    UMReportsData()
    {
    };

    virtual ~UMReportsData()
    {
    };

    /**
     * Determines if an advisor is internal to the CS department.
     * @return  true if the advisor is considered internal (belonging to the CS
     *      department), false otherwise.  This uses a small subset of all the
     *      advisors in the department.
     */
    bool isProfessorInternal(std::string advisorName)
    {
        //Notice this list is a small selection from the set of all "advisors"
        //  in the department.
        return  advisorName == "Meyer,Gary"
                || advisorName == "Interrante,Victoria L"
                || advisorName == "Heimdahl,Mats P E"
                || advisorName == "Gini,Maria"
                || advisorName == "Riedl,John"
                || advisorName == "Kim,Yongdae"
                || advisorName == "Hopper,Nicholas"
                || advisorName == "Whalen,Michael"
                || advisorName == "Papanikolopoulos,Nikolaos"
                || advisorName == "Du,David"
                || advisorName == "Carlis,John"
                || advisorName == "Meyer,Chad"
                || advisorName == "Kumar,Vipin";
    };
};

#endif /* UMREPORTSDATA_H_ */
